const Koa = require("koa");
const views = require("koa-views");
const parser = require("koa-parser");
const nunjucks = require("nunjucks");
const static = require("koa-static");
const controllers = require("./controllers");
const app = new Koa();
const models = require("./models");
const session = require("koa-session");
console.log(models);
//对models里的每个模型封装在一起 可以不用一一接受
// const user = require("./models/user");
// console.log(user);



app.keys = ['2370218992'];
//引用session模块
app.use(session({
    //设置session的过期时间是一个小时
    maxAge:3600000,
},app))


//注册中间件  静态文件最先注册 
app.use(static(__dirname + "/public"));


//先注册post请求的解释器 后注册路由
app.use(parser());

//注册模板引擎
app.use(views(__dirname + "/views", {
    map: { html: "nunjucks" }
}))

app.use(controllers());


//自动同步所有模型  如果表存在则删除
(async () => {
    //  await models.sync();
})();


app.listen(3000, () => {
    console.log("服务器运行的地址是:http:127.0.0.1:3000")
})



